%!Tex Program = xelatex
\documentclass[a4paper]{article}
%\documentclass[a4paper]{ctexart}
\usepackage{xltxtra}
%\setmainfont[Mapping=tex-text]{AR PL UMing CN:style=Light}
%\setmainfont[Mapping=tex-text]{AR PL UKai CN:style=Book}
%\setmainfont[Mapping=tex-text]{WenQuanYi Zen Hei:style=Regular}
%\setmainfont[Mapping=tex-text]{WenQuanYi Zen Hei Sharp:style=Regular}
%\setmainfont[Mapping=tex-text]{AR PL KaitiM GB:style=Regular} 
%\setmainfont[Mapping=tex-text]{AR PL SungtiL GB:style=Regular} 
\usepackage{graphicx}
\usepackage{fontspec}
\usepackage{cite}
\usepackage{geometry}

% 设置中文字体
\setmainfont{AR PL UMing CN}

\geometry{left=20mm,right=20mm,top=20mm,bottom=20mm}

\begin{document}


\title{作业: 计算器的实现}
\author{江洲}
\date{2023-10-27}
\maketitle

\section{项目的设计思路：}
1、首先我借鉴了王老师上课将中缀表达式改写为后缀表达式的程序并做了修改。我的修改是在每个数据后\\
增加了“\#”符号作为每个数据之间的分割以防止出现小数位数与整数位数混淆的问题。\\
2、在处理数据时,我首先调用了改写程序得到后缀表达式。然后在读取后缀表达式(exp用来存储后缀表达\\
式且exp是一个队列)时。每次从exp读取到“\#”后,将前面的数据改写成double类型的数据压入result栈中。\\
在读取到运算符号时将前面的两个数据弹出进行符号运算。然后将符号运算得到的结果重新压入result栈中。\\
3、最后输出最终result中的数据就是需要的运算结果。\\
\section{项目的测试说明：}
1、首先可以修改input.txt文件任意修改其中的表达式。\\
2、然后打开终端进入calculator文件夹中。\\
3、在终端中输入make生成main.cpp的可执行文件test output.txt 和report.pdf文件。\\
4、测试完成后输入make clean 删除test output.txt 和report.pdf文件。\\
\end{document}